package org.ttjhome.server;

import java.util.List;

import org.ttjhome.db.dbo.Activity;
import org.ttjhome.db.dbo.ActivityRecord;
import org.ttjhome.db.dbo.Candidate;
import org.ttjhome.db.dbo.Company;
import org.ttjhome.db.dbo.Job;
import org.ttjhome.db.dbo.Resume;
import org.ttjhome.db.dbo.Tag;
import org.ttjhome.html.struts.common.CandidateCriteria;

public interface HunterService {
	
	
	public Candidate saveCandidate(Candidate candidate);

	public int getCandidateCount(CandidateCriteria criteria);

	public List<Candidate> getCandidates(CandidateCriteria criteria);

	public Candidate  getCandidate(Long candidateId);

	public List<Tag> getAllTags();

	public Tag saveTag(String string);

	public Resume getResume(String resumeId);

	public void deleteResume(Resume resume);

	public List<Company> getCompanies();

	public Company saveCompany(Company company);

	public Company getCompany(Long valueOf);

	public List<Job> getJobsByCompanyId(String companyId);

	public Job saveJob(Job job);

	public Job getJob(Long valueOf);

	public List<Activity> apply(Candidate candidate, Job job);

	public List<Activity> closeActivity(String activityId);

	public Activity getActivity(String activityId);

	public ActivityRecord saveOrUpdateActivityRecord(ActivityRecord record);

	public List<Activity> getActivities(Candidate candidate); 
	
	public List<Activity> getActivities(Job job); 
	
	public List<Tag> groupTag();

}
